package com.carpark.ejb.DAO;

import com.carpark.ejb.Model.ClientsModel;
import com.carpark.ejb.Model.PaymentsModel;
import com.carpark.ejb.Model.ReceivablesModel;
import java.util.Date;
import java.util.List;
import javax.ejb.Local;
import javax.ejb.Remote;

/**
 *
 * @author Sawior
 */
@Local
public interface PaymentsDAO {

    public List<PaymentsModel> getAllPayments();

    public int getPaymentsSize();

    public PaymentsModel getPaymentsById(Integer id);

    public List<PaymentsModel> getPaymentsByPaymentDate(Date paymentDate);

    public List<PaymentsModel> getPaymentsByClient(ClientsModel cl);

    public int getByPaymentDateSize(Date paymentDate);

    public List<PaymentsModel> getPaymentsByPaymentForm(String paymentForm);

    public List<ReceivablesModel> getPayedReceivables();

    public void addPayment(PaymentsModel payment);

    public void updatePayment(PaymentsModel payment);

    public void removePayment(Integer id);
}
